package com.piggy.logi.sys.domain;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 运单增值服务对象 logi_waybill_value_add
 *
 * @author zito
 * @date 2023-08-10
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("logi_waybill_value_add")
public class LogiWaybillValueAdd implements Serializable {

    private static final long serialVersionUID=1L;

    @TableId(value = "id")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;

    @ApiModelProperty(value = "部门ID")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long deptId;

    /** 运单ID */
    @ApiModelProperty("运单ID")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long waybillId;

    /** 保价声明 */
    @ApiModelProperty("保价声明")
    private String parcelInsuranceDesc;

    /** 保价费 */
    @ApiModelProperty("保价费")
    private BigDecimal parcelInsuranceFee;

    /** 回单类型 */
    @ApiModelProperty("回单类型")
    private String receiptType;

    /** 回单数量 */
    @ApiModelProperty("回单数量")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Integer receiptNum;

    /** 回单费 */
    @ApiModelProperty("回单费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal receiptFee;

    /** 代收描述 */
    @ApiModelProperty("代收状态 0 取消/未代收 1 代收")
    private String agentFlag;

    /** 代收费 */
    @ApiModelProperty("代收费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal agentBusinessFee;

    /** 代收服务费 */
    @ApiModelProperty("代收服务费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal agentBusinessServiceFee;

    /** 代收账号 */
    @ApiModelProperty("代收账号")
    private String agentBusinessAccount;

    /** 代收账号类型 */
    @ApiModelProperty("代收账号类型")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Integer agentBusinessAccountType;

    /** 代收账号户名 */
    @ApiModelProperty("代收账号户名")
    private String agentBusinessAccountName;

    /** 代收描述 */
    @ApiModelProperty("代收描述")
    private String agentDesc;

    /** 代收描述 */
    @ApiModelProperty("代收附件")
    private String agentAttach;

    /** 仓库费 */
    @ApiModelProperty("仓库费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal warehouseFee;

    /** 装货费 */
    @ApiModelProperty("装货费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal loadingFee;

    /** 卸货费 */
    @ApiModelProperty("卸货费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal unloadFee;

    /** 短驳费 */
    @ApiModelProperty("短驳费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal drayage;

    /** 短驳费 */
    @ApiModelProperty("搬运费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal carryFee;

    /** 加工费 */
    @ApiModelProperty("加工费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal processFee;

    /** 安装费 */
    @ApiModelProperty("安装费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal installationFee;

    /** 其他描述 */
    @ApiModelProperty("其他描述")
    private String otherDesc;

    /** 其他费 */
    @ApiModelProperty("其他费")
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private BigDecimal otherFee;
}
